技術問答
技術文章
iT 徵才
Tag
聊天室
2025 鐵人賽
登入/註冊
問答
文章
Tag
邦友
鐵人賽
搜尋
2025 iThome 鐵人賽
DAY
1
0
自我挑戰組
用java解Leetcode
系列 第
1
篇
用java解Leetcode Day1
17th鐵人賽
Frank8989
2025-09-15 15:15:17
30 瀏覽
分享至
Two Sum
以上兩張圖片,一張是我的程式碼,另一張是我解題成功的證明,之後不在贅述。
這題有兩個前提,一個是「恰好只有一個解」,這意味這只需要找到一組解即可,不需要擔心會有其他解,另一個是「不能重複使用同一元素」,這意味著不能使用同一索引位置的數字兩次或以上。
解題思路是先創造一個空的雜湊表(HashMap),用來儲存我們已經遍歷過的數字。HashMap的鍵(key)儲存數字本身,值(value)儲存這個數字在陣列中的索引。
接著就要遍歷nums陣列,對於陣列中每個數字nums[i],首先要計算出目標差值(complement = target – nums[i]),再來要檢查這個complement是否已經存在於HashMap中,如果complement存在,就表示已經找到了這對數字,接著只要回傳complement和與它對應的nums[i]的索引就行了,但如果不存在,就將nums[i]和它的索引i存入HashMap中,以便後續的數字能夠檢查它。
雖然已經確定這題目有解,但為了培養良好的習慣,可以加上我最後一段程式碼,可以在找不到解的情況時,回傳一個空陣列。
留言
追蹤
檢舉
下一篇
用java解Leetcode Day2
系列文
用java解Leetcode
共
4
篇
目錄
RSS系列文
訂閱系列文
0
人訂閱
1
用java解Leetcode Day1
2
用java解Leetcode Day2
3
用java解Leetcode Day3
4
用java解Leetcode Day4
完整目錄
熱門推薦
{{ item.subject }}
{{ item.channelVendor }}
|
{{ item.webinarstarted }}
|
{{ formatDate(item.duration) }}
直播中
立即報名
尚未有邦友留言
立即登入留言
iThome鐵人賽
參賽組數
902
組
團體組數
37
組
累計文章數
7624
篇
完賽人數
89
人
看影片追技術
看更多
{{ item.subject }}
{{ item.channelVendor }}
|
{{ formatDate(item.duration) }}
直播中
熱門tag
看更多
15th鐵人賽
16th鐵人賽
13th鐵人賽
14th鐵人賽
12th鐵人賽
11th鐵人賽
鐵人賽
2019鐵人賽
17th鐵人賽
javascript
2018鐵人賽
python
2017鐵人賽
windows
php
c#
windows server
linux
css
react
熱門問題
急!急!急!急!急!急!無法在鐵人賽發表文章
請問我的主機板技嘉 B360M AORUS PRO如果 30TB硬碟抓得到嗎?
想請教如何定義資料庫的Primary Key
Win11 24H2無法透過WSUS2019更新
請問今天鐵人賽的發文系統是否故障?
Windows GPO Bitlocker
【求助】顯卡/主板 支援 PCIe4.0 為何 Host to Device (H2D) 只剩 Gen1 速度 (0.5 GB/s) ?
熱門回答
急!急!急!急!急!急!無法在鐵人賽發表文章
請問我的主機板技嘉 B360M AORUS PRO如果 30TB硬碟抓得到嗎?
想請教如何定義資料庫的Primary Key
Windows GPO Bitlocker
【求助】顯卡/主板 支援 PCIe4.0 為何 Host to Device (H2D) 只剩 Gen1 速度 (0.5 GB/s) ?
熱門文章
[為你自己學 Gemini CLI ... 的原始碼] 第 1 天,從黑黑的畫面開始!
[為你自己學 Gemini CLI ... 的原始碼] 第 2 天,主程式裡的 Hello Kitty!
[為你自己學 n8n] 第 2 天,挑個風水寶地,養你的自動化小精靈!
[為你自己學 n8n] 第 1 天,用節點拼出你的自動化世界!
第25天,虛擬化與容器化的省錢魔法 / 彰化焢肉飯 中部味道(新北板橋)| 30天滷肉飯
IT邦幫忙
×
標記使用者
輸入對方的帳號或暱稱
Loading
找不到結果。
標記
{{ result.label }}
{{ result.account }}